FIG. 1 is a schematic representation of an example of the wireless network 100 or wireless network infrastructure of the wireless communication system of FIG. 1. The wireless network 100 may include a plurality of base stations eNB1 to eNB5, each serving a specific area surrounding the base station schematically represented by the respective cells 1021 to 1025. The base stations are provided to serve users within a cell. A user may be a stationary device or a mobile device. Further, the wireless communication system may be accessed by IoT devices which connect to a base station or to a user. IoT devices may include physical devices, vehicles, buildings and other items having embedded therein electronics, software, sensors, actuators, or the like as well as network connectivity that enable these devices to collect and exchange data across an existing network infrastructure. FIG. 2 shows an exemplary view of only five cells, however, the wireless communication system may include more such cells. FIG. 1 shows two users UE1 and UE2, also referred to as user equipment (UE), that are in cell 1022 and that are served by base station eNB2. Another user UE3 is shown in cell 1024 which is served by base station eNB4. The arrows 1041, 1042 and 1043 schematically represent uplink/downlink connections for transmitting data from a user UE1, UE2 and UE3 to the base stations eNB2, eNB4 or for transmitting data from the base stations eNB2, eNB4 to the users UE1, UE2, UE3. Further, FIG. 1 shows two IoT devices 1061 and 1062 in cell 1024, which may be stationary or mobile devices. The IoT device 1061 accesses the wireless communication system via the base station eNB4 to receive and transmit data as schematically represented by arrow 1081. The IoT device 1062 accesses the wireless communication system via the user UE3 as is schematically represented by arrow 1082.
The wireless communication system may be any single-tone or multicarrier system based on frequency-division multiplexing, like the orthogonal frequency-division multiplexing (OFDM) system, the orthogonal frequency-division multiple access (OFDMA) system defined by the LTE standard, or any other IFFT-based signal with or without CP, e.g. DFT-s-OFDM. Other waveforms, like non-orthogonal waveforms for multiple access, e.g. filter-bank multicarrier (FBMC), generalized frequency division multiplexing (GFDM) or universal filtered multi carrier (UFMC), may be used.
For data transmission, a physical resource grid may be used. The physical resource grid may comprise a set of resource elements to which various physical channels and physical signals are mapped. For example, the physical channels may include the physical downlink and uplink shared channels (PDSCH, PUSCH) carrying user specific data, also referred to as downlink and uplink payload data, the physical broadcast channel (PBCH) carrying for example a master information block (MIB) and a system information block (SIB), the physical downlink control channel (PDCCH) carrying for example the downlink control information (DCI), etc. For the uplink, the physical channels may further include the physical random access channel (PRACH or RACH) used by UEs for accessing the network once a UE synchronized and obtained the MIB and SIB. The physical signals may comprise reference signals (RS), synchronization signals and the like. The resource grid may comprise a frame having a certain duration, e.g. a frame length of 10 milliseconds, in the time domain and having a given bandwidth in the frequency domain. The frame may have a certain number subframes of predefined length, e.g., 2 subframes with a length of 1 millisecond. Each subframe may include two slots of 6 or 7 OFDM symbols depending on the cyclic prefix (CP) length. The PDCCH may be defined by a pre-defined number of OFDM symbols per slot. For example, the resource elements of the first three symbols may be mapped to the PDCCH.
In a wireless communication system like to one depicted schematically in FIG. 1, multi-antenna techniques may be used, e.g., in accordance with LTE, to improve user data rates, link reliability, cell coverage and network capacity. To support multi-stream or multi-layer transmissions, linear precoding is used in the physical layer of the communication system. Linear precoding is performed by a precoder matrix which maps layers of data to antenna ports. The precoding may be seen as a generalization of beamforming, which is a technique to spatially direct/focus data transmission towards an intended receiver.
In the following the downlink (DL) transmission in a mobile multiple input multiple output communication system will be considered, i.e., the communication link carrying data traffic from a base station (eNodeB) to a mobile user equipment (UE). Considering a base station (eNodeB) with NTx antennas and a mobile user equipment (UE), with NRx antennas, the symbols received at a particular instant of time in a DL transmission at the UE y∈NRx×1, can be written asy=HFs+n   (1)where H∈NRx×NTx denotes the channel matrix, F∈NTx×Ns represents the precoder matrix at the eNodeB, n∈NRx×1 is the additive noise at the receiver, s∈Ns×1 is the data vector transmitted by the eNodeB which has to be decoded by the UE, and Ns denotes the number of data streams transmitted.
The precoder matrix that has to be used at the eNodeB to map the data s∈Ns×1 to the NTx antenna ports is decided by solving an optimization problem that is based on the instantaneous channel information H∈NRx×NTx. In a closed-loop mode of communication, the UE estimates the state of the channel and transmits the reports, channel state information (CSI), to the eNodeB via a feedback channel in the uplink (the communication link carrying traffic from the UE to the eNodeB) so that the eNodeB may determine the precoding matrix (see reference [8]). There are also occasions when multiple-layer transmissions are performed without feedback from the UE to determine the precoding matrices. Such a mode of communication is called ‘open-loop’ and the eNodeB makes use of signal diversity and spatial multiplexing to transmit information (see reference [8]).
In the following, the closed-loop DL transmission mode will be considered. The CSI feedback sent to the eNodeB in the closed-loop mode may be of two different types: implicit and explicit. FIG. 2 shows a block-based model of the MIMO DL transmission using codebook-based-precoding in accordance with LTE release 8. FIG. 2 shows schematically the base station 200, the user equipment 300 and the channel 400, like a radio channel for a wireless data communication between the base station 200 and the user equipment 300. The base station includes an antenna array 202 having a plurality of antennas or antenna elements, and a precoder 204 receiving a data vector 206 and a precoder matrix F from a codebook 208. The channel 400 may be described by the channel matrix 402. The user equipment 300 receives the data vector 302 via an antenna or an antenna array 304 having a plurality of antennas or antenna elements. Further, a feedback channel 500 between the user equipment 300 and the base station 200 is shown for transmitting feedback information.
In the case of an implicit feedback, the CSI transmitted by the UE 300 over the feedback channel 500 includes the rank index (RI), the precoding matrix index (PMI) and the channel quality index (CQI) allowing, at the eNodeB 200, deciding the precoding matrix, and the modulation order and coding scheme (MCS) of the symbols transmitted. The PMI and the RI are used to determine the precoding matrix from a predefined set of matrices Ω called ‘codebook’ 208. The codebook 208, e.g., in accordance with LTE, may be a look-up table with matrices in each entry of the table, and the PMI and RI from the UE decide which row and column of the table the optimal precoder matrix is obtained from.
The codebook designs in DL transmissions may be specific to the number of antenna ports used for the transmission. For example, when two ports are used for the transmission, the codebook entries come from the columns of 2×2 unitary matrices with constant modulus entries (see reference [1]). For a 4-port transmission, the columns of householder matrices Bn=I4−2ununH/unHUn may be used for the precoder F∈NTx×Ns (Ns≤4 in this case), where un∈NTx×1 is a vector with unit modulus entries, with n denoting the codebook index (see reference [1]).
With explicit CSI feedback, there is no use of a codebook to determine the precoder. The coefficients of the precoder matrix are transmitted explicitly by the UE. Alternatively, the coefficients of the instantaneous channel matrix may be transmitted, from which the precoder is determined by the eNodeB.
The design and optimization of the precoder 204 and the codebook 28 may be performed for eNodeBs equipped with 1-dimensional Uniform Linear Arrays (ULAs) or 2-dimensional Uniform Planar Arrays (UPAs) having a fixed down-tilt. These antenna arrays 202 allow controlling the radio wave in the horizontal (azimuth) direction so that azimuth-only beamforming at the eNodeB 200 is possible. In accordance with other examples, the design of the codebook 208 is extended to support UPAs for transmit beamforming on both vertical (elevation) and horizontal (azimuth) directions, which is also referred to as full-dimension (FD) MIMO (see reference [2]).
The codebook 208 in FD-MIMO is designed based on the array response of an ideal UPA. The response of an antenna array, also referred to as ‘array response vectors’, with NTx antenna ports is a complex-valued vector of size NTX×1 which contains the amplitude gain and the (relative) phase shift induced or obtained at each antenna port of the antenna array 202 for a wavefront incident from a certain direction. The response of an array is usually represented as a function of angle of arrival or angle or departure. The codebook 208 used in the case of massive antenna arrays such as the ones FD-MIMO, is a set of beamforming weights that forms spatially separated electromagnetic transmit/receive beams using the array response vectors of the array. The beamforming weights of the array are amplitude gains and phase adjustments that are applied to the signal fed to the antennas (or the signal received from the antennas) to transmit (or obtain) a radiation towards (or from) a particular direction. The components of the precoder matrix are obtained from the codebook of the array, and the PMI and the RI are used to ‘read’ the codebook and obtain the precoder.
The array steering vectors of an ideal UPA having identical antennas with ideal antenna placement, e.g., antennas placed with infinite precision as dictated by the geometry, and omnidirectional radiation patterns may be described by the columns of a 2-D Discrete Fourier Transform (DFT) matrix (see reference [4]). Hence, for the codebook of 2D UPAs 2D-DFT-based matrices may be used. 2D-DFT-based matrices are defined for a scalable number of antenna ports, e.g., up to 32 antenna ports per polarization/antenna orientation, or 64 antenna ports in co-polarized antenna arrays (see reference [2]).
The precoder matrices used in FD-MIMO may have a dual-stage structure: F=F1F2. Here, the matrix F1 contains the beamforming vectors which are defined by a 2D-DFT codebook, i.e., the matrix F1 contains the beamforming weights applied to each antenna port of the array to direct the radiation towards a particular direction. The matrix F2 contains coefficients that select and/or linearly combine the 2D-DFT beams in the matrix F1 to obtain a desired overall beam pattern. The matrix F2 may also be used to perform co-phasing between different antenna orientations/polarization groups of the array (see reference [2]).
In massive antenna arrays, multiple antennas that are oriented in different directions may be placed at a particular position in the array, i.e., there are P antenna ports at each position).
Each of the antennas is sensitive to a particular polarization of the transmitted or received wavefront. As the orientation of the antenna defines the polarization direction of the wavefront it is sensitive to, the terms ‘antenna orientations’ and ‘antenna polarizations’ may be used interchangeably. However, in the following ‘antenna orientation(s)’ is used wherever applicable instead of ‘antenna polarization(s)’ so as to avoid confusion with wave polarizations that are also described introduced later. Considering a generic geometry of the array, the components of the FD-MIMO-type two-stage precoder matrix for an array with NTx antenna ports per orientation, and P different antenna orientations among the antennas are, as shown, in the following equation:
                    F        =                                            F              1                        ⁢                          F              2                                =                                                    [                                                                                                    s                        1                        1                                                                                                            s                        2                        1                                                                                    …                                                                                      s                        D                        1                                                                                    …                                                                                                                                                                          0                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ⋮                                                                                                                                                                          ⋱                                                                                                                                                                          ⋮                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  0                                                                                                                                                                          …                                                                                      s                        1                        P                                                                                                            s                        2                        P                                                                                    …                                                                                      s                        D                        P                                                                                            ]                            ⁡                              [                                                                                                    c                        1                                                                                    …                                                                                      c                                                  D                          ′                                                                                                                    ]                                      .                                              (        2        )            
The matrix F1∈NTx·P×D·P has a block-diagonal structure. Each of the vectors sdp∈NTx×1, d=1, 2, . . . , D and p=1, 2, . . . , P in F1 corresponds to a beamforming vector that steers the beam along certain d-th direction selected from D directions, using the antennas oriented in the p-th direction. The possible vectors for sdp∈NTx×1 are the columns contained in the so-called ‘codebook’ matrix of the array, which contains the steering vectors for various angles of radiation.
The vectors cd, d=1, 2, . . . , D′ in F2∈D·P×D′ are used to perform the beam selection or perform a linear combination of beams. The combination/co-phasing of the beams may be performed within and across different antenna polarizations in this matrix. The variable D′ denotes the number of beams formed effectively.
To illustrate the use of the combining matrix F2, the types of vectors used in the matrix are provided along with the purpose they satisfy.
To select a specific beam out of the D steered beam directions in the matrix F1 from both orientations/polarizations, the vector e(d)∈D×1, d=1, 2, . . . , D may be used which contains zeros at all positions except the d-th position, which is one. For instance,
                              F          2                =                              [                                                                                e                                          (                      3                      )                                                                                                                                        e                                          (                      3                      )                                                                                                                    ⋮                                                                                                  e                                          (                      3                      )                                                                                            ]                    ∈                      ℂ                                          D                ·                P                            ×              1                                                          (        3        )            selects the beam steering direction corresponding to the third column vector (in each of the block matrices along the diagonal) in the matrix F1. Multiple beams can be selected using multiple columns, for e.g.,
                              F          2                =                              [                                                                                e                                          (                      3                      )                                                                                                            e                                          (                      5                      )                                                                                                                                        e                                          (                      3                      )                                                                                                            e                                          (                      5                      )                                                                                                                    ⋮                                                  ⋮                                                                                                  e                                          (                      3                      )                                                                                                            e                                          (                      5                      )                                                                                            ]                    ∈                      ℂ                                          D                ·                P                            ×              2                                                          (        4        )            selects the beam directions corresponding to the third and fifth columns in F1. To perform beam selection while co-phasing between polarizations, a matrix of type
                              F          2                =                              [                                                                                                      e                                              j                        ⁢                                                                                                  ⁢                                                  δ                          1                                                                                      ⁢                                          e                                              (                        i                        )                                                                                                                                                                                    e                                              j                        ⁢                                                                                                  ⁢                                                  δ                          2                                                                                      ⁢                                          e                                              (                        i                        )                                                                                                                                          ⋮                                                                                                                        e                                              j                        ⁢                                                                                                  ⁢                                                  δ                          p                                                                                      ⁢                                          e                                              (                        i                        )                                                                                                                  ]                    ∈                      ℂ                                          D                ·                P                            ×              1                                                          (        5        )            may be used, where the values δp, p=1, 2, . . . , P are the phase adjustments. Using vectors with more than one non-zero element, while using complex coefficients with varying amplitudes, means that multiple steering vectors are combined while forming the beam.
The structure of the precoder in (2) considers that the number of columns in each of the blocks, i.e., the number of beamforming vectors for each of the antenna orientations, is the same for each block. Such a structure is assumed for the sake of simplicity of notation and providing examples for F2, and may be readily generalized with a different number of beamforming vectors for different antenna orientations.
The precoder structure in (2) and the structure of the individual matrices F1 and F2 are generalizations of the precoder structure in FD-MIMO for an arbitrary array geometry. For example, Release-13 FD-MIMO has been standardized for a uniform planar array as shown in FIG. 3. The configuration of a UPA may be represented as (NTxH, NTxV, P) where NTxH denotes the number of antenna ports a row of the UPA (in horizontal direction, hence the superscript ‘H’) per antenna orientation, NTxV denotes the number of antenna ports across a column per antenna orientation, and P represents the number of antenna orientations in the array. Therefore, a total of NTxHNTxVP antenna ports are present in the array. The values of P=1 and P=2 are used for co-polarized and dual-polarized arrays, respectively. FIG. 3 shows a typical UPA used in FD-MIMO with P=2, along with the precoder structure.
The matrix F1∈NTxH·NTxV·2×D·P has a block-diagonal structure to separate the beams for the two polarization groups. Moreover, a Kronecker product model is applied to the steering or beamforming vectors in F1 to decouple them into separate horizontal and vertical steering vectors of the UPA. The steering vectors for each direction are taken from the codebooks for the respective directions. The codebook for the horizontal direction, in the UPA (the rows), denoted by ΩH, is given by a DFT matrix of size NTxH×M, where M is the number of samples in the angular domain along the horizontal direction. Similarly, ΩV is the codebook for the vertical direction (columns of the UPA) and given by a DFT matrix of size NTxV×N with N being the number of samples in the angular domain in the vertical direction. The matrices XHl, XVk, XHl′ and XVk′ shown in FIG. 3 are formed by selecting a set of columns from the DFT matrices ΩH or ΩV. Each of the matrices has the following structure:
                                                        X              H              l                        =                                                            [                                                                                                              x                          H                                                      (                            1                            )                                                                                                                                                x                          H                                                      (                            2                            )                                                                                                                      …                                                                                              x                          H                                                      (                            l                            )                                                                                                                                ]                                ⁢                                                                  ⁢                with                ⁢                                                                  ⁢                                  x                  H                                      (                    i                    )                                                              ∈                              Ω                H                                              ,                      i            =            1                    ,          2          ,          …          ⁢                                          ,          l                ⁢                                  ⁢                                            X              H                              l                ′                                      =                                                            [                                                                                                              x                          H                                                      (                            1                            )                                                                                                                                                x                          H                                                      (                            2                            )                                                                                                                      …                                                                                              x                          H                                                      (                                                          l                              ′                                                        )                                                                                                                                ]                                ⁢                                                                  ⁢                with                ⁢                                                                  ⁢                                  x                  H                                      (                    i                    )                                                              ∈                              Ω                H                                              ,                      i            =            1                    ,          2          ,          …          ⁢                                          ,                      l            ′                          ⁢                                  ⁢                                            X              V              k                        =                                                            [                                                                                                              x                          V                                                      (                            1                            )                                                                                                                                                x                          V                                                      (                            2                            )                                                                                                                      …                                                                                              x                          V                                                      (                            k                            )                                                                                                                                ]                                ⁢                                                                  ⁢                with                ⁢                                                                  ⁢                                  x                  V                                      (                    i                    )                                                              ∈                              Ω                V                                              ,                      i            =            1                    ,          2          ,          …          ⁢                                          ,          k                ⁢                                  ⁢                                            X              V                              k                ′                                      =                                                            [                                                                                                              x                          V                                                      (                            1                            )                                                                                                                                                x                          V                                                      (                            2                            )                                                                                                                      …                                                                                              x                          V                                                      (                                                          k                              ′                                                        )                                                                                                                                ]                                ⁢                                                                  ⁢                with                ⁢                                                                  ⁢                                  x                  V                                      (                    i                    )                                                              ∈                              Ω                V                                              ,                      i            =            1                    ,          2          ,          …          ⁢                                          ,                      k            ′                                              (        6        )            
The superscripts of the matrices differ depending upon the number of columns in the matrix and the set of columns selected from the DFT matrices; l=l′ and k=k′ means that the blocks for both polarizations in F1 are identical (see reference [2]).
The second matrix F2 contains coefficients that select and/or linearly combine the array steering vectors in F1 to obtain the desired beam pattern. The choices for various functionalities such as single/multiple beam selection and co-phasing between selected beams are as shown in equations (3) to (5).
The 2D-DFT-based codebook design used in FD-MIMO is advantageous as the overall codebook may be divided into horizontal and vertical codebooks allowing for separate azimuth and elevation precoding, and as separate feedback information is delivered to the eNodeB for the azimuth and elevation domains. Further, the 2D-DFT-based codebook for FD-MIMO allows describing the array steering vectors of an ideal UPA by the columns of the 2D-DFT matrix (see reference [4]). However in practice, due to the non-identical and directional behavior of antennas in the antenna array, and due the electromagnetic coupling between the antennas, the actual observed array response is typically different from a DFT-based manifold considered for the codebook designs in FD-MIMO. Hence, using the 2D-DFT-based codebook for non-ideal arrays does not result in the appropriate/expected directional beam pattern.
BIALKOWSKI M E ET AL: “Effect of Mutual Coupling on the Interference Rejection Capabilities of Linear and Circular Arrays in CDMA Systems”, IEEE TRANSACTIONS ON ANTENNAS AND PROPAGATION, IEEE SERVICE CENTER, PISCATAWAY, N.J., US, vol. 52, no. 4, 1 Apr. 2004 (2004-Apr.-1), pages 1130-1134, describes assessing the interference rejection capabilities of linear and circular arrays of dipoles of a base station of a code-division multiple-access cellular communication system. The effect of mutual coupling of the dipoles is taken into account.
US 2013/077705 A1 describes a method to improve codebook performance for non-linear arrays. The method includes determining a unitary matrix for a plurality of transmission antennas arranged in a given array type, the unitary matrix being determined based on a codebook, where the given array type is configured to steer beams in at least one of elevation and azimuth. The method also includes applying the determined unitary matrix to a signal to be transmitted across the plurality of transmission antennas.
WO 2016/054809 A1 a pre-coded information acquisition device, comprising a determination module, for determining a conversion quantity according to a steering vector and a range of an angle of departure of an antenna pattern, a transmission module, for transmitting to a terminal the information of the conversion quantity determined by the determination module, the information of the conversion quantity being used by the terminal to determine a PMI according to the information of the conversion quantity, a codebook for acquiring channel information and a pilot frequency measurement result, a receiving module, for receiving the PMI reported by the terminal. A network node transmits to the terminal the conversion quantity containing antenna information, and the terminal feeds back the PMI according to the conversion quantity, such that the network node can fully and flexibly acquire the channel information to adapt to application scenarios of different antenna patterns and different angles of departure.
BAXTER J R ET AL: “An experimental study of antenna array calibration”, IEEE TRANSACTIONS ON ANTENNAS AND PROPAGATION, IEEE SERVICE CENTER, PISCATAWAY, N.J., US, vol. 51, no. 3, 1 Mar. 2003 (2003-Mar.-1), pages 664-667, describe a coupling matrix concept for predicting the radiation patterns of elements of an antenna array.
EP 3 046 271 A1 describes a method for operating a base station. The method includes receiving an uplink signal from a user equipment, wherein the uplink signal includes a precoding matrix indicator associated with a first precoder index of a codebook determined by a first and a second precoder indices, and a channel quality indicator. The method includes generating first signal streams by applying an open-loop diversity operation to at least one data stream including quadrature amplitude modulation symbols and generating a larger number of transmit data streams to be transmitted via a plurality of antennas by applying a precoding matrix to the first signal streams.
Taylan Aksoy: “MUTUAL COUPLING CALIBRATION OF ANTENNA ARRAYS FOR DIRECTION-OF-ARRIVAL ESTIMATION”, February 2012 (2012-Feb.-1), describes a theoretic approach for mutual coupling characterization of antenna arrays. In this approach, the idea is to model the mutual coupling effect through a simple linear transformation between the measured and the ideal array data.
US 2016/173180 A1 describes a two-dimensional discrete Fourier transform based codebook for elevation beamforming. The codebook supports single stream codewords and multistream codewords. The two-dimensional discrete Fourier transform based codebook is generated by stacking the columns of the matrix product of two discrete Fourier transform codebook matrices. The codebook size may be flexibly designed based on appropriate beam resolution in azimuth and elevation.
WO 2011/093805 A1 describes a system comprised of a laser range and position finder, antennas with dielectric reflective and non-reflective coatings, multi-channel receivers for signal collection and base band conversion, calibration unit and a calibration processing. The method is used to calibrate antenna positions, gain/phase and mutual coupling simultaneously.
FERREOL ET AL: “On the introduction of an 14-16 extended coupling matrix for a 2D bearing estimation with an experimental RF system”, SIGNAL PROCESSING, ELSEVIER SCIENCE PUBLISHERS B.V. AMSTERDAM, NL, vol. 87, no. 9, 9 May 2007 (2007-May-9), pages 2005-2016, relates to narrow-band DOA (direction of arrival) estimation methods and provides an alternative to a mutual-coupling model by deriving a more accurate analytic expression of the true response.